
"""
给定两个整数， 分别表示分数的分子 numerator 和分母 denominator， 以字符串形式返回小数,　如果是循环小数，找出循环节，用括号将循环节括起来。
解题思路：不断计算商数和余数，把余数乘10之后继续计算商和余数，并保存商值的到列表，直到余数为0或者商值出现重复之后退出；如果余数为０，则说明能整除，
如果余数出现重复，则为无限循环小数，商值列表就是循环节。
"""

def find_cycle(numerator, denominator, num_list, count):
    # 取余
    mod = numerator % denominator
    # 整除
    quotient = numerator // denominator

    # 如果能整除，则返回
    if mod == 0:
        return [True,]
    elif quotient in num_list:
        return num_list
    else:
        if count > 0:
            num_list.append(quotient)
        return find_cycle(mod*10, denominator, num_list, count+1)


def get_numerator_denominator():
    numerator = int(input("请输入一个整数[numerator]："))
    denominator = int(input("请输入一个整数[denominator]："))
    return numerator, denominator


numerator, denominator = get_numerator_denominator()
my_list = find_cycle(numerator, denominator, [], 0)
if my_list == [True,]:
    print('"', str(numerator/denominator), '"')
else:
    my_str = ""
    for i in my_list:
        my_str += str(i)
    print('"', str(numerator//denominator), '.(', my_str, ')"')

